FROM maven:3.8.4-openjdk-11 AS builder
WORKDIR /app

# 复制 pom.xml 并下载依赖（加速构建，利用缓存）
COPY pom.xml .
RUN mvn dependency:go-offline -B

# 复制源码并打包
COPY src ./src
RUN mvn package -DskipTests

# 运行时镜像（使用轻量级 JRE 镜像）
FROM openjdk:11-jre-slim
WORKDIR /app

# 复制构建好的 JAR 包（注意替换为实际服务的 JAR 名称）
COPY --from=builder /app/target/cart-service.jar app.jar

# 设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' > /etc/timezone

# 暴露服务端口（需与 docker-compose.yml 中的端口一致）
EXPOSE 8082

# 启动命令
ENTRYPOINT ["java", "-jar", "app.jar"]